package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 注塑件成本对象 ecd_injection_molding
 * 
 * @author ruoyi
 * @date 2025-11-07
 */
public class EcdInjectionMolding extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 产品ID */
    @Excel(name = "产品ID")
    private Long pid;

    /** 产品类型 */
    @Excel(name = "产品类型")
    private Long ptype;

    /** 料号 */
    @Excel(name = "料号")
    private String partNumber;

    /** 零件名称 */
    @Excel(name = "零件名称")
    private String partName;

    /** 材质 */
    @Excel(name = "材质")
    private String material;

    /** 单位用量 */
    @Excel(name = "单位用量")
    private BigDecimal unitDosage;

    /** 材料单价 */
    @Excel(name = "材料单价")
    private BigDecimal unitPrice;

    /** 净重 */
    @Excel(name = "净重")
    private BigDecimal netWeight;

    /** 料头重 */
    @Excel(name = "料头重")
    private BigDecimal materialHeadWeight;

    /** 次料 */
    @Excel(name = "次料")
    private String inferiorMaterial;

    /** 废料价格 */
    @Excel(name = "废料价格")
    private BigDecimal wasteMaterialPrice;

    /** 模穴数 */
    @Excel(name = "模穴数")
    private Long cavitiesNumber;

    /** 材料损耗率 */
    @Excel(name = "材料损耗率")
    private BigDecimal materialWastageRate;

    /** 材料不良率 */
    @Excel(name = "材料不良率")
    private BigDecimal materialDefectRate;

    /** 材料其他费用 */
    @Excel(name = "材料其他费用")
    private BigDecimal materialOtherExpenses;

    /** 材料管理费占比 */
    @Excel(name = "材料管理费占比")
    private BigDecimal materialManagementRate;

    /** 材料利润占比 */
    @Excel(name = "材料利润占比")
    private BigDecimal materialProfitRate;

    /** 注塑其他 */
    @Excel(name = "注塑其他")
    private String injectionMoldingOther;

    /** 耗料 */
    @Excel(name = "耗料")
    private BigDecimal materialConsumer;

    /** 料头损耗率 */
    @Excel(name = "料头损耗率")
    private BigDecimal headLossRate;

    /** 辅材费用 */
    @Excel(name = "辅材费用")
    private BigDecimal auxiliaryCost;

    /** 材料不良费 */
    @Excel(name = "材料不良费")
    private BigDecimal materialDefectFee;

    /** 材料成本 */
    @Excel(name = "材料成本")
    private BigDecimal materialCost;

    /** 材料管理费 */
    @Excel(name = "材料管理费")
    private BigDecimal materialManagementFee;

    /** 材料利润 */
    @Excel(name = "材料利润")
    private BigDecimal materialProfit;

    /** 材料成本合计 */
    @Excel(name = "材料成本合计")
    private BigDecimal materialTotalCost;

    /** 机台型号 */
    @Excel(name = "机台型号")
    private String machineModel;

    /** 模具类型 */
    @Excel(name = "模具类型")
    private String moldType;

    /** 成本率 */
    @Excel(name = "成本率")
    private BigDecimal costRate;

    /** 周期 */
    @Excel(name = "周期")
    private Long period;

    /** 周期单位 */
    @Excel(name = "周期单位")
    private String periodUnit;

    /** 效率 */
    @Excel(name = "效率")
    private BigDecimal efficiency;

    /** 模具维修天数 */
    @Excel(name = "模具维修天数")
    private Long moldFixDays;

    /** 模具维修费用 */
    @Excel(name = "模具维修费用")
    private BigDecimal moldFixCost;

    /** 模具维修其他费用 */
    @Excel(name = "模具维修其他费用")
    private BigDecimal moldFixOtherCost;

    /** 模具工时不良率 */
    @Excel(name = "模具工时不良率")
    private BigDecimal moldDefectRate;

    /** 模具注塑其他费用 */
    @Excel(name = "模具注塑其他费用")
    private BigDecimal moldInjectionOtherCost;

    /** 模具注塑管理费占比 */
    @Excel(name = "模具注塑管理费占比")
    private BigDecimal moldInjectionManagementRate;

    /** 模具注塑利润占比 */
    @Excel(name = "模具注塑利润占比")
    private BigDecimal moldInjectionProfitRate;

    /** 模具注塑利润占比 */
    @Excel(name = "模具注塑利润占比")
    private BigDecimal moldFixCostPcs;

    /** 模具加工不良费用 */
    @Excel(name = "模具加工不良费用")
    private BigDecimal moldDefectCost;

    /** 模具注塑成本 */
    @Excel(name = "模具注塑成本")
    private BigDecimal moldInjectionCost;

    /** 模具注塑管理费 */
    @Excel(name = "模具注塑管理费")
    private BigDecimal moldInjectionManagementCost;

    /** 模具利润 */
    @Excel(name = "模具利润")
    private BigDecimal moldProfit;

    /** 注塑成本合计 */
    @Excel(name = "注塑成本合计")
    private BigDecimal moldTotalCost;

    /** 工站名称 */
    @Excel(name = "工站名称")
    private String workstation;

    /** 注塑工程师人力 */
    @Excel(name = "注塑工程师人力")
    private Long injectionEngineerCount;

    /** 注塑工程师工费率 */
    @Excel(name = "注塑工程师工费率")
    private BigDecimal injectionEngineerRate;

    /** 工时 */
    @Excel(name = "工时")
    private BigDecimal laborHours;

    /** 人工费 */
    @Excel(name = "人工费")
    private BigDecimal laborCost;

    /** 总成本 */
    @Excel(name = "总成本")
    private BigDecimal totalCost;

    /** 产能 */
    @Excel(name = "产能")
    private BigDecimal capacityKpcsPerDay;

    /** 唯一标识符 */
    private String UID;

    /** 更新时间 */
    private Date UpdateDate;

    /** 创建时间 */
    private Date CreateDate;

    /** 删除时间 */
    private Date DeleteDate;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setPid(Long pid) 
    {
        this.pid = pid;
    }

    public Long getPid() 
    {
        return pid;
    }

    public void setPtype(Long ptype) 
    {
        this.ptype = ptype;
    }

    public Long getPtype() 
    {
        return ptype;
    }

    public void setPartNumber(String partNumber) 
    {
        this.partNumber = partNumber;
    }

    public String getPartNumber() 
    {
        return partNumber;
    }

    public void setPartName(String partName) 
    {
        this.partName = partName;
    }

    public String getPartName() 
    {
        return partName;
    }

    public void setMaterial(String material) 
    {
        this.material = material;
    }

    public String getMaterial() 
    {
        return material;
    }

    public void setUnitDosage(BigDecimal unitDosage) 
    {
        this.unitDosage = unitDosage;
    }

    public BigDecimal getUnitDosage() 
    {
        return unitDosage;
    }

    public void setUnitPrice(BigDecimal unitPrice) 
    {
        this.unitPrice = unitPrice;
    }

    public BigDecimal getUnitPrice() 
    {
        return unitPrice;
    }

    public void setNetWeight(BigDecimal netWeight) 
    {
        this.netWeight = netWeight;
    }

    public BigDecimal getNetWeight() 
    {
        return netWeight;
    }

    public void setMaterialHeadWeight(BigDecimal materialHeadWeight) 
    {
        this.materialHeadWeight = materialHeadWeight;
    }

    public BigDecimal getMaterialHeadWeight() 
    {
        return materialHeadWeight;
    }

    public void setInferiorMaterial(String inferiorMaterial) 
    {
        this.inferiorMaterial = inferiorMaterial;
    }

    public String getInferiorMaterial() 
    {
        return inferiorMaterial;
    }

    public void setWasteMaterialPrice(BigDecimal wasteMaterialPrice) 
    {
        this.wasteMaterialPrice = wasteMaterialPrice;
    }

    public BigDecimal getWasteMaterialPrice() 
    {
        return wasteMaterialPrice;
    }

    public void setCavitiesNumber(Long cavitiesNumber) 
    {
        this.cavitiesNumber = cavitiesNumber;
    }

    public Long getCavitiesNumber() 
    {
        return cavitiesNumber;
    }

    public void setMaterialWastageRate(BigDecimal materialWastageRate) 
    {
        this.materialWastageRate = materialWastageRate;
    }

    public BigDecimal getMaterialWastageRate() 
    {
        return materialWastageRate;
    }

    public void setMaterialDefectRate(BigDecimal materialDefectRate) 
    {
        this.materialDefectRate = materialDefectRate;
    }

    public BigDecimal getMaterialDefectRate() 
    {
        return materialDefectRate;
    }

    public void setMaterialOtherExpenses(BigDecimal materialOtherExpenses) 
    {
        this.materialOtherExpenses = materialOtherExpenses;
    }

    public BigDecimal getMaterialOtherExpenses() 
    {
        return materialOtherExpenses;
    }

    public void setMaterialManagementRate(BigDecimal materialManagementRate) 
    {
        this.materialManagementRate = materialManagementRate;
    }

    public BigDecimal getMaterialManagementRate() 
    {
        return materialManagementRate;
    }

    public void setMaterialProfitRate(BigDecimal materialProfitRate) 
    {
        this.materialProfitRate = materialProfitRate;
    }

    public BigDecimal getMaterialProfitRate() 
    {
        return materialProfitRate;
    }

    public void setInjectionMoldingOther(String injectionMoldingOther) 
    {
        this.injectionMoldingOther = injectionMoldingOther;
    }

    public String getInjectionMoldingOther() 
    {
        return injectionMoldingOther;
    }

    public void setMaterialConsumer(BigDecimal materialConsumer) 
    {
        this.materialConsumer = materialConsumer;
    }

    public BigDecimal getMaterialConsumer() 
    {
        return materialConsumer;
    }

    public void setHeadLossRate(BigDecimal headLossRate) 
    {
        this.headLossRate = headLossRate;
    }

    public BigDecimal getHeadLossRate() 
    {
        return headLossRate;
    }

    public void setAuxiliaryCost(BigDecimal auxiliaryCost) 
    {
        this.auxiliaryCost = auxiliaryCost;
    }

    public BigDecimal getAuxiliaryCost() 
    {
        return auxiliaryCost;
    }

    public void setMaterialDefectFee(BigDecimal materialDefectFee) 
    {
        this.materialDefectFee = materialDefectFee;
    }

    public BigDecimal getMaterialDefectFee() 
    {
        return materialDefectFee;
    }

    public void setMaterialCost(BigDecimal materialCost) 
    {
        this.materialCost = materialCost;
    }

    public BigDecimal getMaterialCost() 
    {
        return materialCost;
    }

    public void setMaterialManagementFee(BigDecimal materialManagementFee) 
    {
        this.materialManagementFee = materialManagementFee;
    }

    public BigDecimal getMaterialManagementFee() 
    {
        return materialManagementFee;
    }

    public void setMaterialProfit(BigDecimal materialProfit) 
    {
        this.materialProfit = materialProfit;
    }

    public BigDecimal getMaterialProfit() 
    {
        return materialProfit;
    }

    public void setMaterialTotalCost(BigDecimal materialTotalCost) 
    {
        this.materialTotalCost = materialTotalCost;
    }

    public BigDecimal getMaterialTotalCost() 
    {
        return materialTotalCost;
    }

    public void setMachineModel(String machineModel) 
    {
        this.machineModel = machineModel;
    }

    public String getMachineModel() 
    {
        return machineModel;
    }

    public void setMoldType(String moldType) 
    {
        this.moldType = moldType;
    }

    public String getMoldType() 
    {
        return moldType;
    }

    public void setCostRate(BigDecimal costRate) 
    {
        this.costRate = costRate;
    }

    public BigDecimal getCostRate() 
    {
        return costRate;
    }

    public void setPeriod(Long period) 
    {
        this.period = period;
    }

    public Long getPeriod() 
    {
        return period;
    }

    public void setPeriodUnit(String periodUnit) 
    {
        this.periodUnit = periodUnit;
    }

    public String getPeriodUnit() 
    {
        return periodUnit;
    }

    public void setEfficiency(BigDecimal efficiency) 
    {
        this.efficiency = efficiency;
    }

    public BigDecimal getEfficiency() 
    {
        return efficiency;
    }

    public void setMoldFixDays(Long moldFixDays) 
    {
        this.moldFixDays = moldFixDays;
    }

    public Long getMoldFixDays() 
    {
        return moldFixDays;
    }

    public void setMoldFixCost(BigDecimal moldFixCost) 
    {
        this.moldFixCost = moldFixCost;
    }

    public BigDecimal getMoldFixCost() 
    {
        return moldFixCost;
    }

    public void setMoldFixOtherCost(BigDecimal moldFixOtherCost) 
    {
        this.moldFixOtherCost = moldFixOtherCost;
    }

    public BigDecimal getMoldFixOtherCost() 
    {
        return moldFixOtherCost;
    }

    public void setMoldDefectRate(BigDecimal moldDefectRate) 
    {
        this.moldDefectRate = moldDefectRate;
    }

    public BigDecimal getMoldDefectRate() 
    {
        return moldDefectRate;
    }

    public void setMoldInjectionOtherCost(BigDecimal moldInjectionOtherCost) 
    {
        this.moldInjectionOtherCost = moldInjectionOtherCost;
    }

    public BigDecimal getMoldInjectionOtherCost() 
    {
        return moldInjectionOtherCost;
    }

    public void setMoldInjectionManagementRate(BigDecimal moldInjectionManagementRate) 
    {
        this.moldInjectionManagementRate = moldInjectionManagementRate;
    }

    public BigDecimal getMoldInjectionManagementRate() 
    {
        return moldInjectionManagementRate;
    }

    public void setMoldInjectionProfitRate(BigDecimal moldInjectionProfitRate) 
    {
        this.moldInjectionProfitRate = moldInjectionProfitRate;
    }

    public BigDecimal getMoldInjectionProfitRate() 
    {
        return moldInjectionProfitRate;
    }

    public void setMoldFixCostPcs(BigDecimal moldFixCostPcs) 
    {
        this.moldFixCostPcs = moldFixCostPcs;
    }

    public BigDecimal getMoldFixCostPcs() 
    {
        return moldFixCostPcs;
    }

    public void setMoldDefectCost(BigDecimal moldDefectCost) 
    {
        this.moldDefectCost = moldDefectCost;
    }

    public BigDecimal getMoldDefectCost() 
    {
        return moldDefectCost;
    }

    public void setMoldInjectionCost(BigDecimal moldInjectionCost) 
    {
        this.moldInjectionCost = moldInjectionCost;
    }

    public BigDecimal getMoldInjectionCost() 
    {
        return moldInjectionCost;
    }

    public void setMoldInjectionManagementCost(BigDecimal moldInjectionManagementCost) 
    {
        this.moldInjectionManagementCost = moldInjectionManagementCost;
    }

    public BigDecimal getMoldInjectionManagementCost() 
    {
        return moldInjectionManagementCost;
    }

    public void setMoldProfit(BigDecimal moldProfit) 
    {
        this.moldProfit = moldProfit;
    }

    public BigDecimal getMoldProfit() 
    {
        return moldProfit;
    }

    public void setMoldTotalCost(BigDecimal moldTotalCost) 
    {
        this.moldTotalCost = moldTotalCost;
    }

    public BigDecimal getMoldTotalCost() 
    {
        return moldTotalCost;
    }

    public void setWorkstation(String workstation) 
    {
        this.workstation = workstation;
    }

    public String getWorkstation() 
    {
        return workstation;
    }

    public void setInjectionEngineerCount(Long injectionEngineerCount) 
    {
        this.injectionEngineerCount = injectionEngineerCount;
    }

    public Long getInjectionEngineerCount() 
    {
        return injectionEngineerCount;
    }

    public void setInjectionEngineerRate(BigDecimal injectionEngineerRate) 
    {
        this.injectionEngineerRate = injectionEngineerRate;
    }

    public BigDecimal getInjectionEngineerRate() 
    {
        return injectionEngineerRate;
    }

    public void setLaborHours(BigDecimal laborHours) 
    {
        this.laborHours = laborHours;
    }

    public BigDecimal getLaborHours() 
    {
        return laborHours;
    }

    public void setLaborCost(BigDecimal laborCost) 
    {
        this.laborCost = laborCost;
    }

    public BigDecimal getLaborCost() 
    {
        return laborCost;
    }

    public void setTotalCost(BigDecimal totalCost) 
    {
        this.totalCost = totalCost;
    }

    public BigDecimal getTotalCost() 
    {
        return totalCost;
    }

    public void setCapacityKpcsPerDay(BigDecimal capacityKpcsPerDay) 
    {
        this.capacityKpcsPerDay = capacityKpcsPerDay;
    }

    public BigDecimal getCapacityKpcsPerDay() 
    {
        return capacityKpcsPerDay;
    }

    public void setUID(String UID) 
    {
        this.UID = UID;
    }

    public String getUID() 
    {
        return UID;
    }

    public void setUpdateDate(Date UpdateDate) 
    {
        this.UpdateDate = UpdateDate;
    }

    public Date getUpdateDate() 
    {
        return UpdateDate;
    }

    public void setCreateDate(Date CreateDate) 
    {
        this.CreateDate = CreateDate;
    }

    public Date getCreateDate() 
    {
        return CreateDate;
    }

    public void setDeleteDate(Date DeleteDate) 
    {
        this.DeleteDate = DeleteDate;
    }

    public Date getDeleteDate() 
    {
        return DeleteDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("pid", getPid())
            .append("ptype", getPtype())
            .append("partNumber", getPartNumber())
            .append("partName", getPartName())
            .append("material", getMaterial())
            .append("unitDosage", getUnitDosage())
            .append("unitPrice", getUnitPrice())
            .append("netWeight", getNetWeight())
            .append("materialHeadWeight", getMaterialHeadWeight())
            .append("inferiorMaterial", getInferiorMaterial())
            .append("wasteMaterialPrice", getWasteMaterialPrice())
            .append("cavitiesNumber", getCavitiesNumber())
            .append("materialWastageRate", getMaterialWastageRate())
            .append("materialDefectRate", getMaterialDefectRate())
            .append("materialOtherExpenses", getMaterialOtherExpenses())
            .append("materialManagementRate", getMaterialManagementRate())
            .append("materialProfitRate", getMaterialProfitRate())
            .append("injectionMoldingOther", getInjectionMoldingOther())
            .append("materialConsumer", getMaterialConsumer())
            .append("headLossRate", getHeadLossRate())
            .append("auxiliaryCost", getAuxiliaryCost())
            .append("materialDefectFee", getMaterialDefectFee())
            .append("materialCost", getMaterialCost())
            .append("materialManagementFee", getMaterialManagementFee())
            .append("materialProfit", getMaterialProfit())
            .append("materialTotalCost", getMaterialTotalCost())
            .append("machineModel", getMachineModel())
            .append("moldType", getMoldType())
            .append("costRate", getCostRate())
            .append("period", getPeriod())
            .append("periodUnit", getPeriodUnit())
            .append("efficiency", getEfficiency())
            .append("moldFixDays", getMoldFixDays())
            .append("moldFixCost", getMoldFixCost())
            .append("moldFixOtherCost", getMoldFixOtherCost())
            .append("moldDefectRate", getMoldDefectRate())
            .append("moldInjectionOtherCost", getMoldInjectionOtherCost())
            .append("moldInjectionManagementRate", getMoldInjectionManagementRate())
            .append("moldInjectionProfitRate", getMoldInjectionProfitRate())
            .append("moldFixCostPcs", getMoldFixCostPcs())
            .append("moldDefectCost", getMoldDefectCost())
            .append("moldInjectionCost", getMoldInjectionCost())
            .append("moldInjectionManagementCost", getMoldInjectionManagementCost())
            .append("moldProfit", getMoldProfit())
            .append("moldTotalCost", getMoldTotalCost())
            .append("workstation", getWorkstation())
            .append("injectionEngineerCount", getInjectionEngineerCount())
            .append("injectionEngineerRate", getInjectionEngineerRate())
            .append("laborHours", getLaborHours())
            .append("laborCost", getLaborCost())
            .append("totalCost", getTotalCost())
            .append("capacityKpcsPerDay", getCapacityKpcsPerDay())
            .append("UID", getUID())
            .append("UpdateDate", getUpdateDate())
            .append("CreateDate", getCreateDate())
            .append("DeleteDate", getDeleteDate())
            .toString();
    }
}
